// bool, Obj This, point pt

Hero this;
point pt2;

this = This.AsHero();

if(!.HasArmy()) return false;
if(.InHolder()) return false;
if(!.EnemiesInSight()) return false;
pt2 = .posRH; 
if(pt.Dist(pt2) >= .sight/4) return false;
if(.command == "stand_position") return false;
if(.command == "retreat_notai") return false;
if(.command == "retreat_bld_notai") return false;
if(.command == "great_charge") return false;

return true;
